package lanQiaoBei.violent_recursion;
/*
* 给定一组线性排列的纸牌arr。玩家A玩家B依次拿走每张纸牌 但是每个玩家只能拿走最左或最右的纸牌 玩家都很聪明 请返回最后获胜者的分数
* *///12345
public class CatchPai {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4, 5};
        System.out.println(realize(arr));
    }
    public static int realize(int[]arr){
           return Math.max(f(arr,0,arr.length-1),s(arr,0,arr.length-1));
    }
    private static int s(int[] arr, int l, int r) {
            if(r==l)return 0;
            return Math.min(f(arr,l+1,r),f(arr,l,r-1));
    }

    private static int f(int[] arr, int l, int r) {
            if(r==l)return arr[r];
            return Math.max(arr[r]+s(arr,l,r-1),arr[l]+s(arr,l+1,r));
    }
}
